NXP Semiconductors /LPC11Cxx /C_CAN /CANSTAT

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text

Interpret as CANSTAT

31 2827 2423 2019 1615 1211 87 43 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (NO_ERROR)LEC0 (NO_TRANSMIT)TXOK 0 (NO_RECEIVE)RXOK 0 (ACTIVE)EPASS 0 (BELOW_LIMIT)EWARN 0 (THE_CAN_MODULE_IS_NO)BOFF 0RESERVED

RXOK=NO_RECEIVE, BOFF=THE_CAN_MODULE_IS_NO, TXOK=NO_TRANSMIT, LEC=NO_ERROR, EWARN=BELOW_LIMIT, EPASS=ACTIVE

Description

Status register

Fields

LEC

Last error code Type of the last error to occur on the CAN bus.The LEC field holds a code which indicates the type of the last error to occur on the CAN bus. This field will be cleared to 0 when a message has been transferred (reception or transmission) without error. The unused code 111 may be written by the CPU to check for updates.

0 (NO_ERROR): No error.

1 (STUFF_ERROR_MORE_TH): Stuff error: More than 5 equal bits in a sequence have occurred in a part of a received message where this is not allowed.

2 (FORM_ERROR_A_FIXED): Form error: A fixed format part of a received frame has the wrong format.

3 (ACKERROR_THE_MESSAG): AckError: The message this CAN core transmitted was not acknowledged.

4 (BIT1ERROR_DURING_TH): Bit1Error: During the transmission of a message (with the exception of the arbitration field), the device wanted to send a HIGH/recessive level (bit of logical value 1), but the monitored bus value was LOW/dominant.

5 (BIT0ERROR_DURING_TH): Bit0Error: During the transmission of a message (or acknowledge bit, or active error flag, or overload flag), the device wanted to send a LOW/dominant level (data or identifier bit logical value 0), but the monitored Bus value was HIGH/recessive. During busoff recovery this status is set each time a sequence of 11 HIGH/recessive bits has been monitored. This enables the CPU to monitor the proceeding of the busoff recovery sequence (indicating the bus is not stuck at LOW/dominant or continuously disturbed).

6 (CRCERROR_THE_CRC_CH): CRCError: The CRC checksum was incorrect in the message received.

7 (UNUSED_NO_CAN_BUS_E): Unused: No CAN bus event was detected (written by the CPU).

TXOK

Transmitted a message successfully This bit must be reset by the CPU. It is never reset by the CAN controller.

0 (NO_TRANSMIT): No transmit. Since this bit was last reset by the CPU, no message has been successfully transmitted.

1 (SUCCESSFUL_TRANSMIT): Successful transmit. Since this bit was last reset by the CPU, a message has been successfully transmitted (error free and acknowledged by at least one other node).

RXOK

Received a message successfully This bit must be reset by the CPU. It is never reset by the CAN controller.

0 (NO_RECEIVE): No receive. Since this bit was last reset by the CPU, no message has been successfully received.

1 (SUCCESSFUL_RECEIVE): Successful receive.Since this bit was last set to zero by the CPU, a message has been successfully received independent of the result of acceptance filtering.

EPASS

Error passive

0 (ACTIVE): Active. The CAN controller is in the error active state.

1 (PASSIVE): Passive. The CAN controller is in the error passive state as defined in the CAN 2.0 specification.

EWARN

Warning status

0 (BELOW_LIMIT): Below limit. Both error counters are below the error warning limit of 96.

1 (AT_LIMIT): At limit. At least one of the error counters in the EC has reached the error warning limit of 96.

BOFF

Busoff status

0 (THE_CAN_MODULE_IS_NO): The CAN module is not in busoff.

1 (THE_CAN_CONTROLLER_I): The CAN controller is in busoff state.

RESERVED

reserved

Links

()